package org.dtrd.modules.content.articles.entity.po;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class DtrdExtEmsYwLessonsExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public DtrdExtEmsYwLessonsExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andDataIdIsNull() {
            addCriterion("data_id is null");
            return (Criteria) this;
        }

        public Criteria andDataIdIsNotNull() {
            addCriterion("data_id is not null");
            return (Criteria) this;
        }

        public Criteria andDataIdEqualTo(Integer value) {
            addCriterion("data_id =", value, "dataId");
            return (Criteria) this;
        }

        public Criteria andDataIdNotEqualTo(Integer value) {
            addCriterion("data_id <>", value, "dataId");
            return (Criteria) this;
        }

        public Criteria andDataIdGreaterThan(Integer value) {
            addCriterion("data_id >", value, "dataId");
            return (Criteria) this;
        }

        public Criteria andDataIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("data_id >=", value, "dataId");
            return (Criteria) this;
        }

        public Criteria andDataIdLessThan(Integer value) {
            addCriterion("data_id <", value, "dataId");
            return (Criteria) this;
        }

        public Criteria andDataIdLessThanOrEqualTo(Integer value) {
            addCriterion("data_id <=", value, "dataId");
            return (Criteria) this;
        }

        public Criteria andDataIdIn(List<Integer> values) {
            addCriterion("data_id in", values, "dataId");
            return (Criteria) this;
        }

        public Criteria andDataIdNotIn(List<Integer> values) {
            addCriterion("data_id not in", values, "dataId");
            return (Criteria) this;
        }

        public Criteria andDataIdBetween(Integer value1, Integer value2) {
            addCriterion("data_id between", value1, value2, "dataId");
            return (Criteria) this;
        }

        public Criteria andDataIdNotBetween(Integer value1, Integer value2) {
            addCriterion("data_id not between", value1, value2, "dataId");
            return (Criteria) this;
        }

        public Criteria andIsDelIsNull() {
            addCriterion("is_del is null");
            return (Criteria) this;
        }

        public Criteria andIsDelIsNotNull() {
            addCriterion("is_del is not null");
            return (Criteria) this;
        }

        public Criteria andIsDelEqualTo(Integer value) {
            addCriterion("is_del =", value, "isDel");
            return (Criteria) this;
        }

        public Criteria andIsDelNotEqualTo(Integer value) {
            addCriterion("is_del <>", value, "isDel");
            return (Criteria) this;
        }

        public Criteria andIsDelGreaterThan(Integer value) {
            addCriterion("is_del >", value, "isDel");
            return (Criteria) this;
        }

        public Criteria andIsDelGreaterThanOrEqualTo(Integer value) {
            addCriterion("is_del >=", value, "isDel");
            return (Criteria) this;
        }

        public Criteria andIsDelLessThan(Integer value) {
            addCriterion("is_del <", value, "isDel");
            return (Criteria) this;
        }

        public Criteria andIsDelLessThanOrEqualTo(Integer value) {
            addCriterion("is_del <=", value, "isDel");
            return (Criteria) this;
        }

        public Criteria andIsDelIn(List<Integer> values) {
            addCriterion("is_del in", values, "isDel");
            return (Criteria) this;
        }

        public Criteria andIsDelNotIn(List<Integer> values) {
            addCriterion("is_del not in", values, "isDel");
            return (Criteria) this;
        }

        public Criteria andIsDelBetween(Integer value1, Integer value2) {
            addCriterion("is_del between", value1, value2, "isDel");
            return (Criteria) this;
        }

        public Criteria andIsDelNotBetween(Integer value1, Integer value2) {
            addCriterion("is_del not between", value1, value2, "isDel");
            return (Criteria) this;
        }

        public Criteria andLessonNameIsNull() {
            addCriterion("lesson_name is null");
            return (Criteria) this;
        }

        public Criteria andLessonNameIsNotNull() {
            addCriterion("lesson_name is not null");
            return (Criteria) this;
        }

        public Criteria andLessonNameEqualTo(String value) {
            addCriterion("lesson_name =", value, "lessonName");
            return (Criteria) this;
        }

        public Criteria andLessonNameNotEqualTo(String value) {
            addCriterion("lesson_name <>", value, "lessonName");
            return (Criteria) this;
        }

        public Criteria andLessonNameGreaterThan(String value) {
            addCriterion("lesson_name >", value, "lessonName");
            return (Criteria) this;
        }

        public Criteria andLessonNameGreaterThanOrEqualTo(String value) {
            addCriterion("lesson_name >=", value, "lessonName");
            return (Criteria) this;
        }

        public Criteria andLessonNameLessThan(String value) {
            addCriterion("lesson_name <", value, "lessonName");
            return (Criteria) this;
        }

        public Criteria andLessonNameLessThanOrEqualTo(String value) {
            addCriterion("lesson_name <=", value, "lessonName");
            return (Criteria) this;
        }

        public Criteria andLessonNameLike(String value) {
            addCriterion("lesson_name like", value, "lessonName");
            return (Criteria) this;
        }

        public Criteria andLessonNameNotLike(String value) {
            addCriterion("lesson_name not like", value, "lessonName");
            return (Criteria) this;
        }

        public Criteria andLessonNameIn(List<String> values) {
            addCriterion("lesson_name in", values, "lessonName");
            return (Criteria) this;
        }

        public Criteria andLessonNameNotIn(List<String> values) {
            addCriterion("lesson_name not in", values, "lessonName");
            return (Criteria) this;
        }

        public Criteria andLessonNameBetween(String value1, String value2) {
            addCriterion("lesson_name between", value1, value2, "lessonName");
            return (Criteria) this;
        }

        public Criteria andLessonNameNotBetween(String value1, String value2) {
            addCriterion("lesson_name not between", value1, value2, "lessonName");
            return (Criteria) this;
        }

        public Criteria andLessonThumbIsNull() {
            addCriterion("lesson_thumb is null");
            return (Criteria) this;
        }

        public Criteria andLessonThumbIsNotNull() {
            addCriterion("lesson_thumb is not null");
            return (Criteria) this;
        }

        public Criteria andLessonThumbEqualTo(String value) {
            addCriterion("lesson_thumb =", value, "lessonThumb");
            return (Criteria) this;
        }

        public Criteria andLessonThumbNotEqualTo(String value) {
            addCriterion("lesson_thumb <>", value, "lessonThumb");
            return (Criteria) this;
        }

        public Criteria andLessonThumbGreaterThan(String value) {
            addCriterion("lesson_thumb >", value, "lessonThumb");
            return (Criteria) this;
        }

        public Criteria andLessonThumbGreaterThanOrEqualTo(String value) {
            addCriterion("lesson_thumb >=", value, "lessonThumb");
            return (Criteria) this;
        }

        public Criteria andLessonThumbLessThan(String value) {
            addCriterion("lesson_thumb <", value, "lessonThumb");
            return (Criteria) this;
        }

        public Criteria andLessonThumbLessThanOrEqualTo(String value) {
            addCriterion("lesson_thumb <=", value, "lessonThumb");
            return (Criteria) this;
        }

        public Criteria andLessonThumbLike(String value) {
            addCriterion("lesson_thumb like", value, "lessonThumb");
            return (Criteria) this;
        }

        public Criteria andLessonThumbNotLike(String value) {
            addCriterion("lesson_thumb not like", value, "lessonThumb");
            return (Criteria) this;
        }

        public Criteria andLessonThumbIn(List<String> values) {
            addCriterion("lesson_thumb in", values, "lessonThumb");
            return (Criteria) this;
        }

        public Criteria andLessonThumbNotIn(List<String> values) {
            addCriterion("lesson_thumb not in", values, "lessonThumb");
            return (Criteria) this;
        }

        public Criteria andLessonThumbBetween(String value1, String value2) {
            addCriterion("lesson_thumb between", value1, value2, "lessonThumb");
            return (Criteria) this;
        }

        public Criteria andLessonThumbNotBetween(String value1, String value2) {
            addCriterion("lesson_thumb not between", value1, value2, "lessonThumb");
            return (Criteria) this;
        }

        public Criteria andLessonDuringIsNull() {
            addCriterion("lesson_during is null");
            return (Criteria) this;
        }

        public Criteria andLessonDuringIsNotNull() {
            addCriterion("lesson_during is not null");
            return (Criteria) this;
        }

        public Criteria andLessonDuringEqualTo(String value) {
            addCriterion("lesson_during =", value, "lessonDuring");
            return (Criteria) this;
        }

        public Criteria andLessonDuringNotEqualTo(String value) {
            addCriterion("lesson_during <>", value, "lessonDuring");
            return (Criteria) this;
        }

        public Criteria andLessonDuringGreaterThan(String value) {
            addCriterion("lesson_during >", value, "lessonDuring");
            return (Criteria) this;
        }

        public Criteria andLessonDuringGreaterThanOrEqualTo(String value) {
            addCriterion("lesson_during >=", value, "lessonDuring");
            return (Criteria) this;
        }

        public Criteria andLessonDuringLessThan(String value) {
            addCriterion("lesson_during <", value, "lessonDuring");
            return (Criteria) this;
        }

        public Criteria andLessonDuringLessThanOrEqualTo(String value) {
            addCriterion("lesson_during <=", value, "lessonDuring");
            return (Criteria) this;
        }

        public Criteria andLessonDuringLike(String value) {
            addCriterion("lesson_during like", value, "lessonDuring");
            return (Criteria) this;
        }

        public Criteria andLessonDuringNotLike(String value) {
            addCriterion("lesson_during not like", value, "lessonDuring");
            return (Criteria) this;
        }

        public Criteria andLessonDuringIn(List<String> values) {
            addCriterion("lesson_during in", values, "lessonDuring");
            return (Criteria) this;
        }

        public Criteria andLessonDuringNotIn(List<String> values) {
            addCriterion("lesson_during not in", values, "lessonDuring");
            return (Criteria) this;
        }

        public Criteria andLessonDuringBetween(String value1, String value2) {
            addCriterion("lesson_during between", value1, value2, "lessonDuring");
            return (Criteria) this;
        }

        public Criteria andLessonDuringNotBetween(String value1, String value2) {
            addCriterion("lesson_during not between", value1, value2, "lessonDuring");
            return (Criteria) this;
        }

        public Criteria andLessonCreateTimeIsNull() {
            addCriterion("lesson_create_time is null");
            return (Criteria) this;
        }

        public Criteria andLessonCreateTimeIsNotNull() {
            addCriterion("lesson_create_time is not null");
            return (Criteria) this;
        }

        public Criteria andLessonCreateTimeEqualTo(Date value) {
            addCriterion("lesson_create_time =", value, "lessonCreateTime");
            return (Criteria) this;
        }

        public Criteria andLessonCreateTimeNotEqualTo(Date value) {
            addCriterion("lesson_create_time <>", value, "lessonCreateTime");
            return (Criteria) this;
        }

        public Criteria andLessonCreateTimeGreaterThan(Date value) {
            addCriterion("lesson_create_time >", value, "lessonCreateTime");
            return (Criteria) this;
        }

        public Criteria andLessonCreateTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("lesson_create_time >=", value, "lessonCreateTime");
            return (Criteria) this;
        }

        public Criteria andLessonCreateTimeLessThan(Date value) {
            addCriterion("lesson_create_time <", value, "lessonCreateTime");
            return (Criteria) this;
        }

        public Criteria andLessonCreateTimeLessThanOrEqualTo(Date value) {
            addCriterion("lesson_create_time <=", value, "lessonCreateTime");
            return (Criteria) this;
        }

        public Criteria andLessonCreateTimeIn(List<Date> values) {
            addCriterion("lesson_create_time in", values, "lessonCreateTime");
            return (Criteria) this;
        }

        public Criteria andLessonCreateTimeNotIn(List<Date> values) {
            addCriterion("lesson_create_time not in", values, "lessonCreateTime");
            return (Criteria) this;
        }

        public Criteria andLessonCreateTimeBetween(Date value1, Date value2) {
            addCriterion("lesson_create_time between", value1, value2, "lessonCreateTime");
            return (Criteria) this;
        }

        public Criteria andLessonCreateTimeNotBetween(Date value1, Date value2) {
            addCriterion("lesson_create_time not between", value1, value2, "lessonCreateTime");
            return (Criteria) this;
        }

        public Criteria andLessonTypeIsNull() {
            addCriterion("lesson_type is null");
            return (Criteria) this;
        }

        public Criteria andLessonTypeIsNotNull() {
            addCriterion("lesson_type is not null");
            return (Criteria) this;
        }

        public Criteria andLessonTypeEqualTo(Integer value) {
            addCriterion("lesson_type =", value, "lessonType");
            return (Criteria) this;
        }

        public Criteria andLessonTypeNotEqualTo(Integer value) {
            addCriterion("lesson_type <>", value, "lessonType");
            return (Criteria) this;
        }

        public Criteria andLessonTypeGreaterThan(Integer value) {
            addCriterion("lesson_type >", value, "lessonType");
            return (Criteria) this;
        }

        public Criteria andLessonTypeGreaterThanOrEqualTo(Integer value) {
            addCriterion("lesson_type >=", value, "lessonType");
            return (Criteria) this;
        }

        public Criteria andLessonTypeLessThan(Integer value) {
            addCriterion("lesson_type <", value, "lessonType");
            return (Criteria) this;
        }

        public Criteria andLessonTypeLessThanOrEqualTo(Integer value) {
            addCriterion("lesson_type <=", value, "lessonType");
            return (Criteria) this;
        }

        public Criteria andLessonTypeIn(List<Integer> values) {
            addCriterion("lesson_type in", values, "lessonType");
            return (Criteria) this;
        }

        public Criteria andLessonTypeNotIn(List<Integer> values) {
            addCriterion("lesson_type not in", values, "lessonType");
            return (Criteria) this;
        }

        public Criteria andLessonTypeBetween(Integer value1, Integer value2) {
            addCriterion("lesson_type between", value1, value2, "lessonType");
            return (Criteria) this;
        }

        public Criteria andLessonTypeNotBetween(Integer value1, Integer value2) {
            addCriterion("lesson_type not between", value1, value2, "lessonType");
            return (Criteria) this;
        }

        public Criteria andLessonFileIsNull() {
            addCriterion("lesson_file is null");
            return (Criteria) this;
        }

        public Criteria andLessonFileIsNotNull() {
            addCriterion("lesson_file is not null");
            return (Criteria) this;
        }

        public Criteria andLessonFileEqualTo(String value) {
            addCriterion("lesson_file =", value, "lessonFile");
            return (Criteria) this;
        }

        public Criteria andLessonFileNotEqualTo(String value) {
            addCriterion("lesson_file <>", value, "lessonFile");
            return (Criteria) this;
        }

        public Criteria andLessonFileGreaterThan(String value) {
            addCriterion("lesson_file >", value, "lessonFile");
            return (Criteria) this;
        }

        public Criteria andLessonFileGreaterThanOrEqualTo(String value) {
            addCriterion("lesson_file >=", value, "lessonFile");
            return (Criteria) this;
        }

        public Criteria andLessonFileLessThan(String value) {
            addCriterion("lesson_file <", value, "lessonFile");
            return (Criteria) this;
        }

        public Criteria andLessonFileLessThanOrEqualTo(String value) {
            addCriterion("lesson_file <=", value, "lessonFile");
            return (Criteria) this;
        }

        public Criteria andLessonFileLike(String value) {
            addCriterion("lesson_file like", value, "lessonFile");
            return (Criteria) this;
        }

        public Criteria andLessonFileNotLike(String value) {
            addCriterion("lesson_file not like", value, "lessonFile");
            return (Criteria) this;
        }

        public Criteria andLessonFileIn(List<String> values) {
            addCriterion("lesson_file in", values, "lessonFile");
            return (Criteria) this;
        }

        public Criteria andLessonFileNotIn(List<String> values) {
            addCriterion("lesson_file not in", values, "lessonFile");
            return (Criteria) this;
        }

        public Criteria andLessonFileBetween(String value1, String value2) {
            addCriterion("lesson_file between", value1, value2, "lessonFile");
            return (Criteria) this;
        }

        public Criteria andLessonFileNotBetween(String value1, String value2) {
            addCriterion("lesson_file not between", value1, value2, "lessonFile");
            return (Criteria) this;
        }

        public Criteria andLessonCreaterIsNull() {
            addCriterion("lesson_creater is null");
            return (Criteria) this;
        }

        public Criteria andLessonCreaterIsNotNull() {
            addCriterion("lesson_creater is not null");
            return (Criteria) this;
        }

        public Criteria andLessonCreaterEqualTo(Integer value) {
            addCriterion("lesson_creater =", value, "lessonCreater");
            return (Criteria) this;
        }

        public Criteria andLessonCreaterNotEqualTo(Integer value) {
            addCriterion("lesson_creater <>", value, "lessonCreater");
            return (Criteria) this;
        }

        public Criteria andLessonCreaterGreaterThan(Integer value) {
            addCriterion("lesson_creater >", value, "lessonCreater");
            return (Criteria) this;
        }

        public Criteria andLessonCreaterGreaterThanOrEqualTo(Integer value) {
            addCriterion("lesson_creater >=", value, "lessonCreater");
            return (Criteria) this;
        }

        public Criteria andLessonCreaterLessThan(Integer value) {
            addCriterion("lesson_creater <", value, "lessonCreater");
            return (Criteria) this;
        }

        public Criteria andLessonCreaterLessThanOrEqualTo(Integer value) {
            addCriterion("lesson_creater <=", value, "lessonCreater");
            return (Criteria) this;
        }

        public Criteria andLessonCreaterIn(List<Integer> values) {
            addCriterion("lesson_creater in", values, "lessonCreater");
            return (Criteria) this;
        }

        public Criteria andLessonCreaterNotIn(List<Integer> values) {
            addCriterion("lesson_creater not in", values, "lessonCreater");
            return (Criteria) this;
        }

        public Criteria andLessonCreaterBetween(Integer value1, Integer value2) {
            addCriterion("lesson_creater between", value1, value2, "lessonCreater");
            return (Criteria) this;
        }

        public Criteria andLessonCreaterNotBetween(Integer value1, Integer value2) {
            addCriterion("lesson_creater not between", value1, value2, "lessonCreater");
            return (Criteria) this;
        }

        public Criteria andLessonEditorIsNull() {
            addCriterion("lesson_editor is null");
            return (Criteria) this;
        }

        public Criteria andLessonEditorIsNotNull() {
            addCriterion("lesson_editor is not null");
            return (Criteria) this;
        }

        public Criteria andLessonEditorEqualTo(Integer value) {
            addCriterion("lesson_editor =", value, "lessonEditor");
            return (Criteria) this;
        }

        public Criteria andLessonEditorNotEqualTo(Integer value) {
            addCriterion("lesson_editor <>", value, "lessonEditor");
            return (Criteria) this;
        }

        public Criteria andLessonEditorGreaterThan(Integer value) {
            addCriterion("lesson_editor >", value, "lessonEditor");
            return (Criteria) this;
        }

        public Criteria andLessonEditorGreaterThanOrEqualTo(Integer value) {
            addCriterion("lesson_editor >=", value, "lessonEditor");
            return (Criteria) this;
        }

        public Criteria andLessonEditorLessThan(Integer value) {
            addCriterion("lesson_editor <", value, "lessonEditor");
            return (Criteria) this;
        }

        public Criteria andLessonEditorLessThanOrEqualTo(Integer value) {
            addCriterion("lesson_editor <=", value, "lessonEditor");
            return (Criteria) this;
        }

        public Criteria andLessonEditorIn(List<Integer> values) {
            addCriterion("lesson_editor in", values, "lessonEditor");
            return (Criteria) this;
        }

        public Criteria andLessonEditorNotIn(List<Integer> values) {
            addCriterion("lesson_editor not in", values, "lessonEditor");
            return (Criteria) this;
        }

        public Criteria andLessonEditorBetween(Integer value1, Integer value2) {
            addCriterion("lesson_editor between", value1, value2, "lessonEditor");
            return (Criteria) this;
        }

        public Criteria andLessonEditorNotBetween(Integer value1, Integer value2) {
            addCriterion("lesson_editor not between", value1, value2, "lessonEditor");
            return (Criteria) this;
        }

        public Criteria andLessonEditTimeIsNull() {
            addCriterion("lesson_edit_time is null");
            return (Criteria) this;
        }

        public Criteria andLessonEditTimeIsNotNull() {
            addCriterion("lesson_edit_time is not null");
            return (Criteria) this;
        }

        public Criteria andLessonEditTimeEqualTo(Date value) {
            addCriterion("lesson_edit_time =", value, "lessonEditTime");
            return (Criteria) this;
        }

        public Criteria andLessonEditTimeNotEqualTo(Date value) {
            addCriterion("lesson_edit_time <>", value, "lessonEditTime");
            return (Criteria) this;
        }

        public Criteria andLessonEditTimeGreaterThan(Date value) {
            addCriterion("lesson_edit_time >", value, "lessonEditTime");
            return (Criteria) this;
        }

        public Criteria andLessonEditTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("lesson_edit_time >=", value, "lessonEditTime");
            return (Criteria) this;
        }

        public Criteria andLessonEditTimeLessThan(Date value) {
            addCriterion("lesson_edit_time <", value, "lessonEditTime");
            return (Criteria) this;
        }

        public Criteria andLessonEditTimeLessThanOrEqualTo(Date value) {
            addCriterion("lesson_edit_time <=", value, "lessonEditTime");
            return (Criteria) this;
        }

        public Criteria andLessonEditTimeIn(List<Date> values) {
            addCriterion("lesson_edit_time in", values, "lessonEditTime");
            return (Criteria) this;
        }

        public Criteria andLessonEditTimeNotIn(List<Date> values) {
            addCriterion("lesson_edit_time not in", values, "lessonEditTime");
            return (Criteria) this;
        }

        public Criteria andLessonEditTimeBetween(Date value1, Date value2) {
            addCriterion("lesson_edit_time between", value1, value2, "lessonEditTime");
            return (Criteria) this;
        }

        public Criteria andLessonEditTimeNotBetween(Date value1, Date value2) {
            addCriterion("lesson_edit_time not between", value1, value2, "lessonEditTime");
            return (Criteria) this;
        }

        public Criteria andLessonDeleterIsNull() {
            addCriterion("lesson_deleter is null");
            return (Criteria) this;
        }

        public Criteria andLessonDeleterIsNotNull() {
            addCriterion("lesson_deleter is not null");
            return (Criteria) this;
        }

        public Criteria andLessonDeleterEqualTo(Integer value) {
            addCriterion("lesson_deleter =", value, "lessonDeleter");
            return (Criteria) this;
        }

        public Criteria andLessonDeleterNotEqualTo(Integer value) {
            addCriterion("lesson_deleter <>", value, "lessonDeleter");
            return (Criteria) this;
        }

        public Criteria andLessonDeleterGreaterThan(Integer value) {
            addCriterion("lesson_deleter >", value, "lessonDeleter");
            return (Criteria) this;
        }

        public Criteria andLessonDeleterGreaterThanOrEqualTo(Integer value) {
            addCriterion("lesson_deleter >=", value, "lessonDeleter");
            return (Criteria) this;
        }

        public Criteria andLessonDeleterLessThan(Integer value) {
            addCriterion("lesson_deleter <", value, "lessonDeleter");
            return (Criteria) this;
        }

        public Criteria andLessonDeleterLessThanOrEqualTo(Integer value) {
            addCriterion("lesson_deleter <=", value, "lessonDeleter");
            return (Criteria) this;
        }

        public Criteria andLessonDeleterIn(List<Integer> values) {
            addCriterion("lesson_deleter in", values, "lessonDeleter");
            return (Criteria) this;
        }

        public Criteria andLessonDeleterNotIn(List<Integer> values) {
            addCriterion("lesson_deleter not in", values, "lessonDeleter");
            return (Criteria) this;
        }

        public Criteria andLessonDeleterBetween(Integer value1, Integer value2) {
            addCriterion("lesson_deleter between", value1, value2, "lessonDeleter");
            return (Criteria) this;
        }

        public Criteria andLessonDeleterNotBetween(Integer value1, Integer value2) {
            addCriterion("lesson_deleter not between", value1, value2, "lessonDeleter");
            return (Criteria) this;
        }

        public Criteria andLessonDelTimeIsNull() {
            addCriterion("lesson_del_time is null");
            return (Criteria) this;
        }

        public Criteria andLessonDelTimeIsNotNull() {
            addCriterion("lesson_del_time is not null");
            return (Criteria) this;
        }

        public Criteria andLessonDelTimeEqualTo(Date value) {
            addCriterion("lesson_del_time =", value, "lessonDelTime");
            return (Criteria) this;
        }

        public Criteria andLessonDelTimeNotEqualTo(Date value) {
            addCriterion("lesson_del_time <>", value, "lessonDelTime");
            return (Criteria) this;
        }

        public Criteria andLessonDelTimeGreaterThan(Date value) {
            addCriterion("lesson_del_time >", value, "lessonDelTime");
            return (Criteria) this;
        }

        public Criteria andLessonDelTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("lesson_del_time >=", value, "lessonDelTime");
            return (Criteria) this;
        }

        public Criteria andLessonDelTimeLessThan(Date value) {
            addCriterion("lesson_del_time <", value, "lessonDelTime");
            return (Criteria) this;
        }

        public Criteria andLessonDelTimeLessThanOrEqualTo(Date value) {
            addCriterion("lesson_del_time <=", value, "lessonDelTime");
            return (Criteria) this;
        }

        public Criteria andLessonDelTimeIn(List<Date> values) {
            addCriterion("lesson_del_time in", values, "lessonDelTime");
            return (Criteria) this;
        }

        public Criteria andLessonDelTimeNotIn(List<Date> values) {
            addCriterion("lesson_del_time not in", values, "lessonDelTime");
            return (Criteria) this;
        }

        public Criteria andLessonDelTimeBetween(Date value1, Date value2) {
            addCriterion("lesson_del_time between", value1, value2, "lessonDelTime");
            return (Criteria) this;
        }

        public Criteria andLessonDelTimeNotBetween(Date value1, Date value2) {
            addCriterion("lesson_del_time not between", value1, value2, "lessonDelTime");
            return (Criteria) this;
        }

        public Criteria andLessonCategoryidIsNull() {
            addCriterion("lesson_categoryId is null");
            return (Criteria) this;
        }

        public Criteria andLessonCategoryidIsNotNull() {
            addCriterion("lesson_categoryId is not null");
            return (Criteria) this;
        }

        public Criteria andLessonCategoryidEqualTo(Integer value) {
            addCriterion("lesson_categoryId =", value, "lessonCategoryid");
            return (Criteria) this;
        }

        public Criteria andLessonCategoryidNotEqualTo(Integer value) {
            addCriterion("lesson_categoryId <>", value, "lessonCategoryid");
            return (Criteria) this;
        }

        public Criteria andLessonCategoryidGreaterThan(Integer value) {
            addCriterion("lesson_categoryId >", value, "lessonCategoryid");
            return (Criteria) this;
        }

        public Criteria andLessonCategoryidGreaterThanOrEqualTo(Integer value) {
            addCriterion("lesson_categoryId >=", value, "lessonCategoryid");
            return (Criteria) this;
        }

        public Criteria andLessonCategoryidLessThan(Integer value) {
            addCriterion("lesson_categoryId <", value, "lessonCategoryid");
            return (Criteria) this;
        }

        public Criteria andLessonCategoryidLessThanOrEqualTo(Integer value) {
            addCriterion("lesson_categoryId <=", value, "lessonCategoryid");
            return (Criteria) this;
        }

        public Criteria andLessonCategoryidIn(List<Integer> values) {
            addCriterion("lesson_categoryId in", values, "lessonCategoryid");
            return (Criteria) this;
        }

        public Criteria andLessonCategoryidNotIn(List<Integer> values) {
            addCriterion("lesson_categoryId not in", values, "lessonCategoryid");
            return (Criteria) this;
        }

        public Criteria andLessonCategoryidBetween(Integer value1, Integer value2) {
            addCriterion("lesson_categoryId between", value1, value2, "lessonCategoryid");
            return (Criteria) this;
        }

        public Criteria andLessonCategoryidNotBetween(Integer value1, Integer value2) {
            addCriterion("lesson_categoryId not between", value1, value2, "lessonCategoryid");
            return (Criteria) this;
        }

        public Criteria andLessonUrlIsNull() {
            addCriterion("lesson_url is null");
            return (Criteria) this;
        }

        public Criteria andLessonUrlIsNotNull() {
            addCriterion("lesson_url is not null");
            return (Criteria) this;
        }

        public Criteria andLessonUrlEqualTo(String value) {
            addCriterion("lesson_url =", value, "lessonUrl");
            return (Criteria) this;
        }

        public Criteria andLessonUrlNotEqualTo(String value) {
            addCriterion("lesson_url <>", value, "lessonUrl");
            return (Criteria) this;
        }

        public Criteria andLessonUrlGreaterThan(String value) {
            addCriterion("lesson_url >", value, "lessonUrl");
            return (Criteria) this;
        }

        public Criteria andLessonUrlGreaterThanOrEqualTo(String value) {
            addCriterion("lesson_url >=", value, "lessonUrl");
            return (Criteria) this;
        }

        public Criteria andLessonUrlLessThan(String value) {
            addCriterion("lesson_url <", value, "lessonUrl");
            return (Criteria) this;
        }

        public Criteria andLessonUrlLessThanOrEqualTo(String value) {
            addCriterion("lesson_url <=", value, "lessonUrl");
            return (Criteria) this;
        }

        public Criteria andLessonUrlLike(String value) {
            addCriterion("lesson_url like", value, "lessonUrl");
            return (Criteria) this;
        }

        public Criteria andLessonUrlNotLike(String value) {
            addCriterion("lesson_url not like", value, "lessonUrl");
            return (Criteria) this;
        }

        public Criteria andLessonUrlIn(List<String> values) {
            addCriterion("lesson_url in", values, "lessonUrl");
            return (Criteria) this;
        }

        public Criteria andLessonUrlNotIn(List<String> values) {
            addCriterion("lesson_url not in", values, "lessonUrl");
            return (Criteria) this;
        }

        public Criteria andLessonUrlBetween(String value1, String value2) {
            addCriterion("lesson_url between", value1, value2, "lessonUrl");
            return (Criteria) this;
        }

        public Criteria andLessonUrlNotBetween(String value1, String value2) {
            addCriterion("lesson_url not between", value1, value2, "lessonUrl");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}